This application relates to printing images, for example, digital and/or physical copies of images.
Traditionally, conventional photo-finishing processes operate in a xe2x80x9clinearxe2x80x9d manner in which an ordered set of prints are produced from a linear, ordered set of negative images (i.e., a strip of exposed and developed film). For example, in a conventional photo-finishing process, a set of negative images are developed from an exposed film. Typically, the negative images are arranged on the developed film (referred to as a xe2x80x9cnegativexe2x80x9d) in an ordered, linear set. For example, a negative 130 is shown in FIG. 1 with a set of negative images 132 arranged sequentially on the film. After the negative has been produced in the developing step, prints are printed using the negative.
Modern film-processing laboratories are designed to process large reels of film. Each large reel of film is constructed by splicing together several (e.g., around 100 or more) units of film that are received from several customers. Conventional automated printing equipment, however, typically can only associate one set of processing parameters (such as finish, size, and number of copies) with each reel of film that is being processed. As a result, each print produced from the same reel of film is produced with the same processing parameters. For example, as shown in FIG. 1, such conventional automated printing equipment can produce a set 134 of prints in which each print in the set 134 is intended for the same recipient 136 and is printed once as a 4xe2x80x3xc3x976xe2x80x3 print with a glossy finish. In a separate processing run in which different processing parameters are entered (e.g., in a subsequent pass of the same reel of film through the automated printing equipment), a second set 138 of prints can be produced from the negative 130 in which each print in the set 138 is intended for the same recipient 140 and is printed three times as a 4xe2x80x3xc3x976xe2x80x3 print with a matte finish. In yet another separate processing run in which different processing parameters are entered, a third set 142 of prints can be produced from the negative 130 in which each print in the set 142 is intended for the same recipient 144 and is printed once as a 5xe2x80x3xc3x977xe2x80x3 print with a glossy finish.
Because conventional automated photo-finishing equipment and techniques typically require that each print produced from the same film be produced with the same processing parameters, conventional film-processing labs typically require their customers to choose a single set of processing parameters that will be applied to all the prints to be generated from a given unit of film. In other words, although conventional photo-processing labs allow customers to order xe2x80x9cdouble printsxe2x80x9d (i.e., two copies of each image on a unit of film), the customers typically are not able to specify separate processing parameters for the two sets of prints. For example, the customer is not able to specify that one of the sets of prints is to be printed as 4xe2x80x3xc3x976xe2x80x3, glossy prints for the customer""s parents and that the other set of prints is to be printed as 5xe2x80x3xc3x977xe2x80x3, matte prints for the customer. Instead, the customer typically only can specify one set of processing parameters for both sets of prints (e.g., 4xe2x80x3xc3x976xe2x80x3, glossy prints for the customer). Also, customers typically are not allowed to specify processing parameters on a per-image basis (e.g., customers cannot select certain images to be printed twice while the rest of the images in the unit of film are to be printed once or not all). Therefore, if a customer would like to get two prints of certain images within a unit of film, the customer typically has to order two prints of every image in the unit of film. Likewise, the customer typically is unable to specify that only certain images in the unit of film are to be printed; instead, the customer will have to order, and pay for, prints of all the images in a given unit of film.
Moreover, information about the images in a given reel of film (e.g., processing parameters, which customer is associated with a particular group of images, etc.) typically is not indicated on the negative film itself. Thus, a technician in the lab cannot detect errors (e.g., the use of incorrect processing parameters, the association of an incorrect customer with a group of images, etc.) using only the film; instead, other ways of keeping track of such information must be used. Typically, bar codes or other records are kept with each reel of film during processing to indicate which customer""s order is associated with that reel. For example, the tape that is used to splice a unit of film onto the reel of film typically includes a bar code that is used to associate a customer with the unit of film. Also, typically these bar codes or other records must be maintained in a precise order so that the prints produced from the reel of film can be associated with the proper customer. If the bar codes or other records are misplaced or somehow get out of order, the prints produced from the reel of film may be associated with the incorrect customer.
After the film has been developed and the prints have been printed, the negatives are cut into strips, typically from about 5 to 7 inches in length, and are returned to the customer along with the prints. If the user wishes to have additional prints (often referred to as xe2x80x9creprintsxe2x80x9d) made, the customer can take the strips of negatives to a photo-finishing lab and request that particular reprints be made from the negative strips. Typically, when ordering reprints, the customer can specify some of the processing parameters (e.g., finish, number of copies, and size) on a per-image basis. However, typically all reprints ordered from a single set of negative strips must be intended for the same recipient (i.e., the customer ordering the reprints). Also, many customers find it inconvenient to keep track of all of their negatives; indeed, customers often lose the negative strips.
Typically, after receiving negative strips from a customer, a lab technician tapes the negative strips to a punch tape, which acts as a carrier for the negative strips. The technician must manually identify each negative image in the negative strip from which a reprint is to be created and punch a set of punches in the punch tape next to each of the identified negative images specifying the particular processing parameters designated by the customer. The punch tape (with the negative strips taped to it) then is run through reprint equipment, which produces the specified prints based on the punches. Such conventional processes used by labs to create reprints from negative strips, however, are labor intensive and prone to error.
One increasingly popular alternative to conventional, film-based photography is digital photography. A digital camera 108, shown in FIG. 2, enables users to take pictures (i.e., images), which are saved in memory (not shown) within the digital camera 108 in a digital (electronic) format. After taking and storing the images, the user can connect the digital camera 108 to a computer system 100 in order to upload the digital images to the computer""s disk drive or other non-volatile memory 110. Once the digital images are uploaded to the computer system 100, the user can erase the digital images from the memory of the digital camera 108 so that the user can take and store additional images using the digital camera 108.
The computer system 100 typically includes a hardware setup for executing software that allows a user to perform tasks such as communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic contentxe2x80x94that is, any combination of text, images, movies, music or other sounds, animations, 3D virtual worlds, and links to other objects. The system includes various input/output (I/O) devices (mouse 103, keyboard 105, display 107) in addition to the digital camera 108 and a general purpose computer 100 having a central processor unit (CPU) 121, an I/O unit 117 and a memory 109 that stores data and various programs such as an operating system 111, and one or more application programs 113. The computer system 100 also typically includes non-volatile memory 110 (e.g., flash RAM, a hard disk drive, and/or a floppy disk or other removable storage media) and a communications card or device 123 (e.g., a modem or network adapter) for exchanging data with a network 127 via a communications link 125 (e.g., a telephone line).
In addition to taking digital pictures with a digital camera 108, users can obtain digital images, for example, of film-based prints from a traditional camera, by sending an exposed film into a photo-finishing service, which develops the film to make prints and then scans the prints or negatives to generate digital image files. The digital image files then can be transmitted back to the user by e-mail or on a CD-ROM, diskette, or other removable storage medium.
In any event, once the digital images are stored on the computer 100, a user can perform various operations on them. For example, an image viewer application can be used to view the images or a photo editor application can be used to touch-up or otherwise modify the images. In addition, an electronic messaging (e.g., e-mail) application can be used to transmit the digital images to other users.
In addition to viewing the digital images on the computer display 107, users often desire to have hard copies (physical prints) made of digital images. Such hard copies can be generated locally by the user using output devices such an inkjet printer or a dye sublimation printer. In addition, users can transmit digital images (e.g., either over a computer network or by using a physical storage medium such as a floppy disk) to a photo-finishing service, which can make hard copies of the digital images and send them (e.g., by U.S. Mail or courier service) back to the user.
FIGS. 3A-3F show a sequence of screen shots that a user might encounter when transmitting digital images to a photo-finishing service to have hard copies (prints) made of the images. In FIG. 3A, the user first encounters a contact information window 200 in which the user must enter several items of contact information such as first and last names 202, 204, address 206, city 208, state 210, country 212, phone 214, fax 216, and e-mail address 218. This information typically is required by the photo-finishing service for purposes of billing and shipping.
After the user has entered the required information, the user presses the xe2x80x9cNextxe2x80x9d button 220 to arrive at the next screenxe2x80x94an image selection window 222 as shown in FIGS. 3B and 3C. In the image selection window 222, the user designates the specific images of which hard copies are to be made. The digital images either can be selected from among the images stored on the user""s computer by clicking the xe2x80x9cSelect Image . . .xe2x80x9d button 230 or they can be acquired from a digital camera or scanner attached to the user""s computer by clicking the xe2x80x9cAcquire Image . . . xe2x80x9dbutton 232. Once selected, the images can be viewed and/or cropped by clicking on the xe2x80x9cView/Cropxe2x80x9d button 234.
The user can designate the hard copy format and other parameters (e.g., size, number of copies, paper type) on a per-image basis. That is, for each selected image, the user must specify the hard copy format and other parameters by selecting or entering the desired options using drop-down list 224 and text box 226. This approach requires the user to go through the option selection process multiples times in order to order multiple images. The selected images and their associated parameters are shown in display area 228. Typically, each order for prints must meet a minimum order amount 223 (e.g., five dollars).
After the images and their respective hard copy parameters have been selected, the user clicks the Next button 236 and a shipping and payment information window 238 is presented. In this window 238, the user selects a desired shipping method from drop-down list 240 and specifies a method of payment and associated verification information in text boxes 242, 244, 246 and 248.
After this information has been provided, the user clicks the Next button 250 and is presented with an order confirmation window as shown in FIG. 3E. The order verification window 250 allows the user to view and confirm the order including the images selected and their respective parameters in display area 252, as well as the price of the order 254. If the user is satisfied with the order, the user clicks the Finish button 256 to complete the order.
Upon completing the order, the images are uploaded to the photo-finishing service as indicated by the upload window 258 in FIG. 3F. Once the images are uploaded, the photo-finishing service arranges to have prints made of the selected images and to have the prints mailed to the recipient and address specified in the contact information window 200. If the user desires to have prints of the same (or different) images sent to another person (e.g., a family member or friend), the user typically must repeat the entire order generating process represented by FIGS. 3A-3F. Generally, repeating the ordering process to send prints to another person involves entering a considerable amount of redundant information, meeting the minimum order amount for each order, and incurring separate charges on the user""s credit card (or other financial instrument).
The present inventors recognized that it would be advantageous to take a single multiple-recipient order for image prints, break it down into sub-orders corresponding to a single recipient, break down each sub-order into printable units (referred to as xe2x80x9csub-batchesxe2x80x9d) having matching processing parameters, and scheduling and printing the sub-batches on automated printing equipment in an optimized manner.
Implementations may include various combinations of the following features.
In one aspect, a method of backprinting image prints includes receiving an order specifying one or more recipients and, for each specified recipient, a set of one or more images associated with that recipient. The method may also include, for each recipient specified by the order, separating the images associated with the recipient into at least one printable unit of images and, for each printable unit, printing each image in the printable unit on a first side of an image print. The method further may include backprinting on the other side of one or more of the image prints.
Non-image information (e.g., an image number associated with the image, a printable unit number associated with the printable unit from which the image print was printed, an order number associated with the order from which the image print was printed, reorder information such as a telephone number and/or a universal resource locator for a website from which prints can be reordered, a bar code, and a message) may be backprinted on at least one image print. A bar code backprinted on the image print may encode an audio message, the image number associated with the image, and/or the printable unit number associated with the printable unit from which the image print was printed. A message backprinted on image print may have been received from a user. Also, the method may include backprinting a first message (e.g., a first message received from a user) on the other side of one or more image prints associated with a first recipient and backprinting another message, different from the first message, (e.g., another message received from a user) on the other side of one or more image prints associated with another recipient. The message backprinted on an image print may include, for example, the name of the photographer who took the image, the date the image was taken, the date the image was printed, a copyright notice, language describing any legal restrictions on using the image, and an advertisement.
The method may also include, prior to backprinting, inverting the image print, aligning the inverted image print, and reducing curling of the image print (e.g., using suction). The method may further include, for each recipient, separating the images associated with the recipient into one or more sub-orders. Also, separating the images associated with the recipient into at least one printable unit of images may include, for each sub-order, separating the images associated with the sub-order into one or more sub-batches where each sub-batch represents a printable unit.
In another aspect, a backprinting system may include a front-end computer sub-system for receiving an order specifying one or more recipients and, for each specified recipient, a set of one or more images associated with that recipient. The system also may include a scheduler, in communication with the front-end computer sub-system and the plurality of printers, that, for each recipient specified by the order, separates the images associated with the recipient into at least one printable unit of images. The system may further include one or more printers, in communication with the scheduler, for printing each image in a printable unit on a first side of an image print. Moreover, the system may include one or more backprinters, each backprinter receiving one or more image prints from at least one of the one or more printers and backprinting on the other side of the one or more image prints. Each backprinter may backprint non-image information on the one or more image prints.
The non-image information may include an image number associated with the image, a printable unit number associated with the printable unit from which the image print was printed, an order number associated with the order from which the image print was printed, reorder information (e.g., a telephone number and/or a universal resource locator for a website from which prints can be reordered), a bar code (e.g., a bar code encoding an audio message, the image number associated with the image, and/or the printable unit number associated with the printable unit from which the image print was printed), and a message.
The front-end computer sub-system may receives a message that is backprinted on an image print from a user. Also, each backprinter may backprint a first message (e.g., a message received from a user) on the other side of one or more image prints associated with a first recipient and may backprint another message, different from the first message, (e.g., a message received from a user) on the other side of one or more image prints associated with a second recipient. The message may include the name of the photographer who took the image, the date the image was taken, the date the image was printed, a copyright notice, language describing any legal restrictions on using the image, and an advertisement.
The system may include an inverter that inverts the image print prior to backprinting, an alignment device that aligns the inverted image print prior to backprinting, and curl reduction equipment that reduces curling of the image print prior to backprinting (e.g., a vacuum table that uses suction to reduce curling of the image print). The scheduler may further include scheduler software embodied in a computer-readable medium comprising instructions for causing the scheduler to separate the images associated with the recipient into one or more sub-orders. The scheduler software may further include instructions for causing the scheduler, for each sub-order, to separate the images associated with the sub-order into one or more sub-batches, each sub-batch representing a printable unit.
In another aspect, a method of backprinting an image may include receiving backprinting information from a user, printing an image on a first side of an image print, and backprinting the backprinting information on the other side of one or more of the image prints. The method may also include receiving an image from a user.
The backprinting information may include non-image information such as an image number associated with the image, a printable unit number associated with the printable unit from which the image print was printed, an order number associated with the order from which the image print was printed, reorder information (e.g., a telephone number and/or a universal resource locator for a website from which prints can be reordered), a bar code (e.g., a bar code that encodes one or more of the following: an audio message, the image number associated with the image, and the printable unit number associated with the printable unit from which the image print was printed), and a message (e.g., a message including the name of the photographer who took the image, the date the image was taken, the date the image was printed, a copyright notice, language describing any legal restrictions on using the image, and/or an advertisement). The user from which the backprinting information is received may be different from the user from which the image is received. The method may also include, prior to backprinting, inverting the image print, aligning the inverted image, and reducing curling of the image (e.g., using suction).
In another aspect, a backprinting system may include a front-end computer sub-system for receiving an image and backprinting information from a user. The system may also include a printer in communication with the front-end computer sub-system for printing the image on a first side of an image print. The system further may include a backprinter that receives one or more image prints from the printer and backprints the backprinting information on the other side of the one or more image prints. The backprinting information may include information generated by the backprinting system.
Also, the backprinting information may include non-image information (e.g., an image number associated with the image, a printable unit number associated with the printable unit from which the image print was printed, an order number associated with the order from which the image print was printed, reorder information, a bar code, and a message). The reorder information may include a telephone number and/or a universal resource locator for a website from which prints can be reordered. The message may include the name of the photographer who took the image, the date the image was taken, the date the image was printed, a copyright notice, language describing any legal restrictions on using the image, and an advertisement. The non-image information may optionally include a bar code that encodes an audio message, the image number associated with the image, and/or the printable unit number associated with the printable unit from which the image print was printed.
The system may also include an inverter that inverts the image print prior to backprinting, an alignment device that aligns the inverted image print prior to backprinting, and curl reduction equipment that reduces curling of the image print prior to backprinting (e.g., a vacuum table that uses suction to reduce curling of the image print).
In another aspect, an article of manufacture may include an image print medium having a scanable symbol (e.g., encoding user-input information) embodied on the back of the image print. The scanable symbol may cause a scanner to decode information encoded in the scanable symbol when the scanable symbol is scanned by the scanner. The scanner may decode any user-input information encoded in the scanable symbol. For example, the scanable symbol may be a bar code that causes a bar code reader to decode information encoded in the bar code. The bar code may encode an audio message (e.g., a user-input audio message) that causes the bar code reader to play the audio message when the bar code reader scans the bar code. The bar code may also encode a number associated with the article of manufacture, which causes the scanner to identify the article of manufacturer by decoding the number.
One or more of the following advantages may be provided. The systems and techniques described here provide an efficient mechanism for printing images in an optimized manner. An order of images to be printed can be divided into one or more printable units of images that can be separately scheduled for printing. By dividing an order into printable units of images, the separate printable units can be printed in a non-linear manner in order to use more efficiently available printing resources. For example, a single multiple-recipient order can be divided into sub-orders corresponding to a single recipient; then, each sub-order can be divided into sub-batches, which correspond to separate printable units. Sub-batches from different sub-orders and different orders can be sorted and combined into a batch for printing on the available printing resources.
In addition, such sub-batches or other printable units can be scheduled for printing according to a global scheduling algorithm in which orders to be printed during a given unit of time (e.g., a work shift) are divided into sub-orders and sub-batches at the beginning of the shift. Then, batches are assembled from the sub-batches and scheduled for printing during the shift so as to optimize the use of printing resources over the course of the shift. Also, an immediate or just-in-time scheduling algorithm can be used in which orders are received and divided into sub-orders and sub-batches periodically over the course of a shift; batches are assembled and assigned to printers periodically during the shift based on the sub-batches and printers that are currently available when the batch is assembled.
Also, the systems and techniques described here provide mechanisms for providing improved control and tracking of the image printing process. For example, a low resolution camera can be used to capture low-resolution data that can be used to perform image print verification checks (i.e., checks of the ordering of the image prints) and quality checks (i.e., checks of the image quality of the image prints). Moreover, bar code readers can be used to read bar codes printed on destination identifier prints and/or the backs of image prints in order to identify when sub-batches and image prints have been printed, backprinted, binned, and/or shipped.
Moreover, photo-sensors positioned along a print line can be used to develop timing data that can be used for the detection of error conditions in the print line. For example, timing data can be used to develop a line profile that identifies how long it should take a given image print to pass the various photo sensors and a batch profile that identifies how long it should take successive image prints to pass a given photo sensor. The timing data can be used to detect conditions such as paper jams and for process control.
Additionally, a print line can be provided that is fully automated (i.e., does not require an operator to perform any of the line processing functions) from the point the images are uploaded by a user until the packaged image prints are placed in a shipping bin for shipping to the specified recipients. For example, an automated insertion system can be used to automatically insert fully processed image prints into packaging material, seal the packaging material, and/or sort the packaged image prints into appropriate shipping bins.
Furthermore, the state of each image print that is to be generated from an order can also be tracked so as to provide more precise tracking and error recovery. For example, the states that are tracked for each image print to be generated from an order can include an xe2x80x9cEnteredxe2x80x9d state indicating that the image from which the image print is to be generated has been included in an order but has not yet been sent to a print lab or print line for printing, a xe2x80x9cProcessingxe2x80x9d state indicating that the image from which the image print is to be generated has been sent to a print lab or print line for printing, a xe2x80x9cBinnedxe2x80x9d state indicating that the image print has been printed and binned, and a xe2x80x9cShippedxe2x80x9d state indicating that the image print has been shipped. The states also can include a xe2x80x9cStoredxe2x80x9d state indicating that the image print has been stored, e.g., for consolidation with other image prints. The multiple states can be used to track the image prints as they are being printed and to recover from errors in the printing process. For example, if an error occurs during the processing of a given batch, image prints from the batch that are in the Processing state when the error occurred still need to be printed after the error has been removed while any image prints from the batch that are in the Binned state or Shipped state when the error occurred need not be printed again once the error is removed from the print line. As a result, the amount of rework required to recover from errors can be reduced.
Also, backprinting information (e.g., non-image information) can be backprinted on the back of an image print. The information backprinted on the back of an image print can be used, for example, in the print lab to identify and/or track individual image prints as well as the sub-batches, batches, sub-orders, and orders with which the image prints are associated. Also, the backprinted information can be used to convey additional information to a recipient of the image print (e.g., a user-input message, advertisement, where reprints can be ordered, and/or tracking information such as an image number and/or sub-order or order number). The backprinting information can also be used to encode an audio message (e.g., an audio message provided by the photographer or other user) in a bar code that the recipient of the image print can decode to listen to the audio message.
The details of one or more embodiments are set forth in the accompanying drawings and in the description below. Other features, objects, and advantages of the invention will become apparent from the description and drawings, and from the claims.